package com.transaction.demo.test;

import java.util.Arrays;

public class Main {
    public static void main(String[] args) {
        int[] arr = {1, 2, 3, 4,  7, 8, 9,8, 6};
        System.out.println("排序前：" + Arrays.toString(arr));
        rearrange(arr);
        System.out.println("排序后：" + Arrays.toString(arr));
    }

    // 将奇数排在偶数前面的方法
    public static void rearrange(int[] arr) {
        int left = 0, right = arr.length - 1;
        while (left < right) {
            while (left < right && arr[left] % 2 != 0) {  // 找到第一个偶数的位置
                left++;
            }
            while (left < right && arr[right] % 2 == 0) { // 找到第一个奇数的位置
                right--;
            }

            // 交换两个位置上的数
            if (left < right) {
                int temp = arr[left];
                arr[left] = arr[right];
                arr[right] = temp;
                left++;
                right--;
            }
        }
    }
}
